Business-critical applications are currently hosted on distributed servers using Sun Microsystems Java 2 Enterprise Edition (J2EE) technologies. Such applications include servers providing key business operations directly to customers running browser clients. A variety of tools and techniques are available to monitor the performance of various components of such systems, including databases, platforms, and hardware. However, the performance experienced by the customer is not the performance of such underlying components, but the performance of the application. The inventors have identified a key failure in the prior art to provide information on the performance of the application.
As a result of the inability of prior art products to measure performance of the application, decisions about selections of hardware and software may be ill-informed. For example, if an application is responding slowly, one option available to managers is to purchase or lease additional servers on which the application runs. Such purchases are expensive, and the installation of new hardware employs information technology personnel who are necessarily diverted from other tasks. Other responses to an application responding slowly include changing of configurations of various hardware. However, numerous different combinations of various hardware and software configurations may need to be tried in order to improve application performance.